﻿using Magicodes.WeChat.SDK.Apis.OAuth;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.ComponentModel.DataAnnotations;

namespace Magicodes.WeChat.Application.Authorization.Dto
{
    /// <summary>
    /// 获取网页授权链接输入参数
    /// </summary>
    public class GetAuthorizeUrlInput
    {
        /// <summary>
        /// 公众号的租户Id,为空则默认获取当前租户的配置信息
        /// </summary>
        public long? Key { get; set; }

        /// <summary>
        /// 授权后重定向的回调链接地址，请使用urlencode对链接进行处理
        /// </summary>
        [Required]
        public string RedirectUrl { get; set; }

        /// <summary>
        /// 重定向后会带上state参数，开发者可以填写a-zA-Z0-9的参数值，最多128字节
        /// </summary>
        public string State { get; set; }

        /// <summary>
        /// 应用授权作用域
        ///     snsapi_base （不弹出授权页面，直接跳转，只能获取用户openid）
        ///     snsapi_userinfo （弹出授权页面，可通过openid拿到昵称、性别、所在地。并且，即使在未关注的情况下，只要用户授权，也能获取其信息）
        /// </summary>
        public OAuthScopes OAuthScope { get; set; }
    }
}
